Embodiments of the present specification relate generally to the generation and deployment of model-based control solutions for industrial control systems, and more particularly, to model-based control platforms for industrial control systems.
Industrial control software platforms have traditionally been effective in providing tools to design, implement, and deploy controllers for industrial assets in a robust and efficient manner. For example, in industries such as oil and gas processing or power generation, the use of software platforms that support programmable logic controller (PLC) languages specified in standard IEC 61131-3 are very effective for development of a controller. Many industrial assets require a controller capable of a wide range of tasks, having flexibility to handle customizations and adaptation to address problems of degradation, plant configuration changes, hardware upgrades, and temporary modifications to a control logic to solve operability issues. Software platforms enable such modifications through a modular architecture, which offer a rich set of primitive modules for logic building and a graphical user interface that allows different combinations of primitive modules to be removed or added to overall control code in a flexible manner.
In platforms supporting PLC languages, the primitive modules or primitives are precompiled libraries having tested and reusable code. In extant methods, a user may modify any combination of primitive modules through the graphical user interface. The modified control logic is deployed to the control hardware. After a user finalizes customizations and modifications, the data for the new configuration is downloaded to the control hardware. It may be noted that the executable code for each primitive module is unchanged and there is no new code generation needed to perform modified runtime operations. In one example, the primitive modules may include simple operations between signals, ladder logic, integrators, differentiators, lead-lag compensators and digital filters. Configuration data is created or modified to specify linkages between the primitive modules, the manner in which sensor signals are fed to the controller, and the manner in which actuator commands are issued to each actuator. The combination of the primitive modules, configuration data, and the user interface enables a control engineer to make quick modifications in the control code even after installation, obviating the need for low-level programming tools, code generation or compiling processes that could significantly delay implementation.
Model-Based Controls (MBC) are a set of techniques typically adopted to improve control performance. Generally, MBCs refer to control algorithms that make explicit use of a model of a system to be controlled to generate accurate and well-informed control actions. MBCs may include, but not be limited to, techniques like state estimation, model-based fault detection, diagnostics and accommodation, model-based degradation tracking, linear quadratic regulation, robust control, gain scheduling, dynamic inversion, model predictive control, and variations thereof. MBC techniques may enable significant performance improvements. However, the use of MBC techniques in industrial control platforms is usually very limited. As a result, a control engineer may need to repeat multiple stages of programming scripts, compilation tools, and code generation processes, entailing a relatively long and expensive development process and the need of a workforce with additional skills.